Skip to content

Add support for the Pi Vision 10.1" HMI#6915

Merged
pelwell merged 2 commits intoraspberrypi:rpi-6.12.yfrom
kronoidz:ap/pivision-final
Jun 24, 2025
Merged

Add support for the Pi Vision 10.1" HMI#6915
pelwell merged 2 commits intoraspberrypi:rpi-6.12.yfrom
kronoidz:ap/pivision-final

Conversation

@kronoidz
Copy link
Copy Markdown

This pull request introduces support for the upcoming SECO Pi Vision product, which consists of an LVDS adapter and a display.

Specifically, it:

  • Adds a driver for the Diodes pi4ioe5v6408 GPIO expander
  • Enables the following four necessary modules in the bcm2712 defconfig:
    • Atmel MaxTouch driver
    • panel-lvds
    • pi4ioe5v6408 GPIO driver
    • sn65dsi83 bridge driver
  • Adds the pivision dtoverlay, which gets automatically loaded by the Raspberry Pi bootloader if the EEPROM on the adapter is correctly programmed

@pelwell
Copy link
Copy Markdown
Contributor

pelwell commented Jun 20, 2025

How does the GPIO driver differ materially from https://github.com/raspberrypi/linux/blob/rpi-6.12.y/drivers/gpio/gpio-fxl6408.c? What happens if you put compatible = "fcs,fxl6408"; in your overlay instead?

@kronoidz kronoidz force-pushed the ap/pivision-final branch from 18d0700 to 99e2f20 Compare June 20, 2025 12:36
@kronoidz
Copy link
Copy Markdown
Author

You're right, they are equivalent and the board works with the fxl6408 driver as well.
I've removed the other driver.

@pelwell
Copy link
Copy Markdown
Contributor

pelwell commented Jun 20, 2025

  1. Does the product really only work with Pi 5 hardware?
  2. You've only enabled the required drivers for the Pi 5-specific defconfig, which uses 16kB pages. Is there a reason that your product can't be used with the more generic kernel8.img (built from arch/arm64/configs/bcm2711_defconfig) or the new "realtime" kernel8_rt.img?

target-path = "/";
__overlay__ {
panel: panel {
compatible = "panel-lvds";
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The guidance for use of panel-lvds is that you should have a panel specific compatible first, and fall back to panel-lvds.
eg https://github.com/raspberrypi/linux/blob/rpi-6.12.y/arch/arm/boot/dts/allwinner/sun8i-a83t-tbs-a711.dts#L74

Having any form of display timings in DT was accepted to mainline very begrudgingly, and this was their compromise to allow fixing up the timings without requiring a DT change (ABI and all that).

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added panel-specific compatible: auo,g101ean02-2

@6by9
Copy link
Copy Markdown
Contributor

6by9 commented Jun 23, 2025

  1. Does the product really only work with Pi 5 hardware?

Use of GPIO 34 (normally that camera GPIO) for interrupts precludes it working on any board that uses a GPIO expander for the CAM_GPIO lines.
The spec also lists it as exposing PCIe and USB3 ports too, so that does make it CM5 only.

Alessandro Pecugi added 2 commits June 23, 2025 17:08
Enable drivers required by the SECO Pi Vision 10.1 CM5 HMI in all
CM5-compatible defconfigs.

Specifically, this commit enables:
* driver for Atmel MaxTouch controllers
* panel-lvds
* TI SN65DSI83 DSI-LVDS bridge

Signed-off-by: Alessandro Pecugi <alessandro.pecugi@seco.com>
Add overlay for SECO Pi Vision adapter HAT, with the
sn65dsi83 LVDS bridge, a 10.1-inch LVDS panel, and Atmel
mxt touch controller

For the pi4ioe5v6408 GPIO expander, the equivalent fxl6408 driver
is used.

Signed-off-by: Alessandro Pecugi <alessandro.pecugi@seco.com>
@kronoidz kronoidz force-pushed the ap/pivision-final branch from 99e2f20 to 2564a6b Compare June 23, 2025 15:18
@kronoidz
Copy link
Copy Markdown
Author

  1. You've only enabled the required drivers for the Pi 5-specific defconfig, which uses 16kB pages. Is there a reason that your product can't be used with the more generic kernel8.img (built from arch/arm64/configs/bcm2711_defconfig) or the new "realtime" kernel8_rt.img?

No, there's no specific reason. I've updated and tested both bcm2711_defconfig and bcm2711_rt_defconfig to include the necessary drivers.

@pelwell pelwell merged commit c7712fa into raspberrypi:rpi-6.12.y Jun 24, 2025
11 of 12 checks passed
popcornmix added a commit to raspberrypi/firmware that referenced this pull request Jun 25, 2025
See: raspberrypi/linux#6920

kernel: v2 dwc2 DMA alignment_buffer handling
See: raspberrypi/linux#6923

kernel: Add support for the Pi Vision 10.1" HMI
See: raspberrypi/linux#6915
popcornmix added a commit to raspberrypi/rpi-firmware that referenced this pull request Jun 25, 2025
See: raspberrypi/linux#6920

kernel: v2 dwc2 DMA alignment_buffer handling
See: raspberrypi/linux#6923

kernel: Add support for the Pi Vision 10.1" HMI
See: raspberrypi/linux#6915
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants